package tech.aistar.design.factory.version02;

/**
 * 本类用来演示: 简单工厂
 *
 * @author: success
 * @date: 2022/7/25 2:03 下午
 */
public class SimpleFactory {

    //定义若干个公开的静态的常量属性
    public static final String QQ = "QQ";
    public static final String WX = "WX";


    //方法的返回类型写成接口,方法的执行结果可以返回这个接口的任意一个实现类对象.
    //通过传入一个参数,返回某个类型(类/接口)的具体的实例
    public static Sender getInstance(String type){
        Sender sender = null;

        switch (type){
            case QQ:
                sender = new QQSender();
                break;
            case WX:
                sender = new WXSender();
                break;
        }
        return sender;
    }
}
